package com.gxh.vo;

import com.gxh.entity.MachineImage;
import com.gxh.entity.MachineVideo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;

@Data
@AllArgsConstructor
@Builder
@NoArgsConstructor
@ApiModel(description = "设备详情返回的数据格式")
public class MachineDetailAdminVO implements Serializable {

    @ApiModelProperty("主键")
    private Long id;

    @ApiModelProperty("机械设备名称或规格")
    private String name;

    @ApiModelProperty("机械设备分类id")
    private Long categoryId;

    @ApiModelProperty("机械设备品牌")
    private String brand;

    @ApiModelProperty("设备使用系统")
    private String machineSystem;

    @ApiModelProperty("设备出厂的年份")
    private Integer year;

    @ApiModelProperty("设备数量")
    private Integer quantity;

    @ApiModelProperty("用户设备价格")
    private BigDecimal customPrice;

    @ApiModelProperty("同行设备价格")
    private BigDecimal peerPrice;

    @ApiModelProperty("设备位置id")
    private Long locationId;
    @ApiModelProperty("设备位置类别")
    private Integer type;

    @ApiModelProperty("浏览次数")
    private Integer viewCount;

    @ApiModelProperty("是否售出0：未出售，1：已售出")
    private Integer isSold;

    @ApiModelProperty("售出时间")
    private LocalDateTime soldTime;

    @ApiModelProperty("描述信息")
    private String description;

    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;

    @ApiModelProperty("更新时间")
    private LocalDateTime updateTime;

    @ApiModelProperty("创建人")
    private String createUser;

    @ApiModelProperty("修改人")
    private String updateUser;

    @ApiModelProperty("设备分类名称")
    private String categoryName;

    @ApiModelProperty("设备省份名称")
    private String province;
    @ApiModelProperty("设备城市名称")
    private String city;
    @ApiModelProperty("设备图片")
    private List<MachineImage> images = new ArrayList<>();
    @ApiModelProperty("设备视频")
    private List<MachineVideo> videos = new ArrayList<>();
}
